#!/bin/sh

[ -e /lib/firmware/$FIRMWARE ] && exit 0

. /lib/functions/caldata.sh

board=$(board_name)

case "$FIRMWARE" in
"ath9k-eeprom-ahb-18100000.wmac.bin")
	case $board in
	8dev,rambutan)
		caldata_extract "caldata" 0x1000 0x800
		;;
	meraki,mr18)
		. /lib/upgrade/nand.sh

		if [ -n "$(nand_find_volume ubi0 caldata)" ]; then
			caldata_extract_ubi "caldata" 0x1000 0x440
		else
			caldata_extract "odm-caldata" 0x1000 0x440
		fi
		ath9k_patch_mac $(macaddr_add $(mtd_get_mac_binary_ubi board-config 102) 1)
		;;
	*)
		caldata_die "board $board is not supported yet"
		;;
	esac
	;;
"ath9k-eeprom-pci-0000:00:00.0.bin")
	case $board in
	meraki,mr18)
		. /lib/upgrade/nand.sh

		if [ -n "$(nand_find_volume ubi0 caldata)" ]; then
			caldata_extract_ubi "caldata" 0x5000 0x440
		else
			caldata_extract "odm-caldata" 0x5000 0x440
		fi
		ath9k_patch_mac $(macaddr_add $(mtd_get_mac_binary_ubi board-config 102) 2)
		;;
	*)
		caldata_die "board $board is not supported yet"
		;;
	esac
	;;
"ath9k-eeprom-pci-0000:01:00.0.bin")
	case $board in
	meraki,mr18)
		. /lib/upgrade/nand.sh

		if [ -n "$(nand_find_volume ubi0 caldata)" ]; then
			caldata_extract_ubi "caldata" 0x9000 0x440
		else
			caldata_extract "odm-caldata" 0x9000 0x440
		fi
		ath9k_patch_mac $(macaddr_add $(mtd_get_mac_binary_ubi board-config 102) 3)
		;;
	*)
		caldata_die "board $board is not supported yet"
		;;
	esac
	;;
esac
